#ifndef KEY_H_
#define KEY_H_

#include <string>
#include <sstream>
#include "NumberUtil.h"

class Key {
	protected:
		char* data;
		unsigned int size;
		long int offset;
	
	public:
		Key();
		Key(char* data, unsigned int size, long int offset);
		Key(const Key &);
		~Key();
		void setKey(char* data, unsigned int size, long int offset);
		void getKey(char* data, unsigned int &size);
		unsigned int getSize();
		void setOffset(long int offset);
		long int getOffset();
		void toCharArray(char* array, unsigned int &arraySize);
		bool operator==(const Key & )const ;
		bool operator!=(const Key & )const ;
		bool operator<(const Key & )const ;
		bool operator>(const Key & )const ;
		const Key &operator=(const Key&);
		void print();
		void clean();
		
};

#endif /*KEY_H_*/
